Nuprl Lemma : general-append-cancellation 11,40

T:Type, as,bs,cs,ds:(T List).
(append(ascs) = append(bsds (T List))
 ((||as|| = ||bs||   (||cs|| = ||ds||  ))
 guard(((as = bs (cs = ds))) 
latex


Definitionst  T, s = t, x:AB(x), x:AB(x), append(asbs), type List, listp(A), cons(carcdr), prop{i:l}, Type, ||as||, , #$n, n + m, left + right, P  Q, guard(T), x:A  B(x), P  Q, P  Q, void, [], False, ge(ij), P  Q, P  Q, rec-case(a) of [] => s | x::y => z.t(x;y;z), f(a), x.A(x), Y, A  B, hd(l), {x:AB(x)} , a < b, A, tl(l), True
Lemmasiff wf, rev implies wf, ge wf, tl wf, hd wf, length append, add functionality wrt eq, non neg length, guard wf, length wf1, append wf

origin